﻿using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using SchadenEscritorio.Contratos;
using SchadenEscritorio.Vistas;

namespace SchadenEscritorio.Presentadores
{
    class PresentadorMenuPrincipal
    {
        private IContratoMenuPrincipal _vista;

        #region constructor

        public PresentadorMenuPrincipal(IContratoMenuPrincipal vista)
        {
            _vista = vista;
        }
        #endregion

        #region Metodos
        
        /// <summary>
        /// metodo que direcciona a la ventana de Agregar Aseguradora
        /// </summary>
        public void IrAgregarAseguradora()
        {
            AgregarEmpresa ventana = new AgregarEmpresa(); 
            _vista.Ventana.Hide();
            ventana.Show();
        }

        public void IrEditarAseguradora()
        {
            EditarEmpresas ventana = new EditarEmpresas();
            _vista.Ventana.Hide();
            ventana.Show();
        }
        public void IrAgregarAsegurado()
        {
            AgregarCliente ventana = new AgregarCliente();
            _vista.Ventana.Hide();
            ventana.Show();
        }
        public void IrEditarCliente()
        {
            EditarCliente ventana= new EditarCliente();
            _vista.Ventana.Hide();
            ventana.Show();
        }
        /// <summary>
        /// Metodo que redirecciona a la ventana que agrega siniestro
        /// </summary>
        public void IrAgregarSiniestro()
        {
            AgregarSiniestro ventana = new AgregarSiniestro();
            _vista.Ventana.Hide();
            ventana.Show();
        }
        public void Cargar()
        {
            while(true)
            {

                if (!Session.EsIniciado)
                {
                    Login ventanaLogin = new Login();
                    ventanaLogin.ShowDialog();
                    
                    if(ventanaLogin.DialogResult == DialogResult.OK)
                    {
                        Session.Nombre = ventanaLogin.NombreUsuario.Text;
                        Session.Rol = "Administrador";
                        Session.EsIniciado = true;
                        Session.Password = ventanaLogin.Password.Text;
                        ventanaLogin.Dispose();
                        break;
                    }

                }
                else break;
            }
            _vista.NombreUsuario.Text = Session.Nombre;
            _vista.RolUsuario.Text = Session.Rol;
            int width = _vista.NombreUsuario.Size.Width;
            int widthRol = _vista.RolUsuario.Size.Width;
            const int widthPanel = 240;
            _vista.NombreUsuario.Location = new Point((widthPanel-width)/2,78);
            _vista.RolUsuario.Location = new Point((widthPanel - widthRol) / 2,118);
        }
        #endregion
    }
}
